.card {
    height: 100vh;
    display: grid;
    padding: 0 5vw;
    padding-top: 10vh;
    grid-template-columns: repeat(4, 25%);
    grid-template-rows: repeat(4, 25%);
    box-sizing: border-box;
    background-color: #000;
    border: 2px solid #f00;
}

.scan {
    position: absolute;
    top: 8vh;
    left: 295px;
    .scan-img {
        padding: 10px 40px;
        width: 80px;
        height: 80px;
    }
}

.word-item {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 60px;
}
.bujian {
    width: 80px;
    height: 80px;
}
.tips {
    position: absolute;
    left: 50px;
    opacity: 0.3;
    color: #fff;
}
.back-logo {
    position: absolute;
    left: 50px;
    font-size: 60px;
    color: #fff;
}
.scan-box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: #000;
    overflow: hidden;
}
.line {
    position: absolute;
    background-color: #0f0;
    box-shadow: 1px 1px 15px 1px #fff7;
}
.col-line {
    left: 10px;
    width: 5px;
    height: 100vh;
    animation: col-line  1s linear infinite alternate;
}
@keyframes col-line {
    100% {
        left: 100vw;
    }
}
.row-line {
    top: 10px;
    width: 100vw;
    height: 5px;
    animation: row-line  1.5s ease-in-out infinite alternate;
}
@keyframes row-line {
    100% {
        top: 100vh;
    }
}

.brain {
    position: absolute;
    top: 100vh;
    background-color: #fff;
    width: 100vw;
    height: 100vh;
    transition: top linear 3s;
    display: flex;
    justify-content: center;
    align-items: center;
    .brain-img {
        width: 100vw;
        height: 100vh;
    }
    .confirm-word {
        position: absolute;
        top: 20vh;
        left: 40vw;
        font-size: 100px;
        color: #fff;
    }
}